\hypertarget{classparser_program_1_1_parser_program}{\section{parser\-Program.\-Parser\-Program Class Reference}
\label{classparser_program_1_1_parser_program}\index{parser\-Program.\-Parser\-Program@{parser\-Program.\-Parser\-Program}}
}


This class is responsible of the parsing of input string, and stack parsing creation.  




Collaboration diagram for parser\-Program.\-Parser\-Program\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classparser_program_1_1_parser_program__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classparser_program_1_1_parser_program_a75809e27c5f5fd3b28863c17024c78a6}{{\bfseries Parser\-Program} (String in)}\label{classparser_program_1_1_parser_program_a75809e27c5f5fd3b28863c17024c78a6}

\item 
\hypertarget{classparser_program_1_1_parser_program_a00bd1a89b976e04b3e3ed022093a3664}{{\bfseries Parser\-Program} (\hyperlink{interfacecontext_free_1_1grammar_1_1_i_grammar}{I\-Grammar} g, Hashtable$<$ String, List$<$ String $>$$>$ action, Hashtable$<$ String, List$<$ String $>$$>$ go\-To)}\label{classparser_program_1_1_parser_program_a00bd1a89b976e04b3e3ed022093a3664}

\item 
\hypertarget{classparser_program_1_1_parser_program_a85c97b5518ccedd3cfeae357e8ed28e2}{void {\bfseries set\-Action\-Table} (Hashtable$<$ String, List$<$ String $>$$>$ action\-Table)}\label{classparser_program_1_1_parser_program_a85c97b5518ccedd3cfeae357e8ed28e2}

\item 
\hypertarget{classparser_program_1_1_parser_program_a157523a0c4a59471b6194e5868840b7f}{void {\bfseries set\-Goto\-Table} (Hashtable$<$ String, List$<$ String $>$$>$ goto\-Table)}\label{classparser_program_1_1_parser_program_a157523a0c4a59471b6194e5868840b7f}

\item 
\hypertarget{classparser_program_1_1_parser_program_a89685a1ddaa7fe03516ab89efeffa1bf}{Stack$<$ String $>$ {\bfseries get\-Stack} ()}\label{classparser_program_1_1_parser_program_a89685a1ddaa7fe03516ab89efeffa1bf}

\item 
\hypertarget{classparser_program_1_1_parser_program_aeae5ec3cce4e823ada43a40403a84edd}{void {\bfseries set\-Stack} (Stack$<$ String $>$ stack)}\label{classparser_program_1_1_parser_program_aeae5ec3cce4e823ada43a40403a84edd}

\item 
\hypertarget{classparser_program_1_1_parser_program_af5f3b504a20607ba94a8e3a1cb7e39b4}{String {\bfseries get\-Input} ()}\label{classparser_program_1_1_parser_program_af5f3b504a20607ba94a8e3a1cb7e39b4}

\item 
\hypertarget{classparser_program_1_1_parser_program_a5db0b2d0b34c93fcd9cb06e0f3a75fbf}{void {\bfseries set\-Input} (String input)}\label{classparser_program_1_1_parser_program_a5db0b2d0b34c93fcd9cb06e0f3a75fbf}

\item 
\hypertarget{classparser_program_1_1_parser_program_a27f0e5e4b6be9950dc586832f7d20fc8}{\hyperlink{interfacecontext_free_1_1grammar_1_1_i_grammar}{I\-Grammar} {\bfseries get\-Grammar} ()}\label{classparser_program_1_1_parser_program_a27f0e5e4b6be9950dc586832f7d20fc8}

\item 
\hypertarget{classparser_program_1_1_parser_program_a8174d65b7fd5e3aca2dbe48ec1582700}{void {\bfseries set\-Grammar} (\hyperlink{interfacecontext_free_1_1grammar_1_1_i_grammar}{I\-Grammar} grammar)}\label{classparser_program_1_1_parser_program_a8174d65b7fd5e3aca2dbe48ec1582700}

\item 
\hypertarget{classparser_program_1_1_parser_program_ade596abd5eb6e01c6be4e9da8d71b39d}{List$<$ \hyperlink{classparser_program_1_1_history_element}{History\-Element} $>$ {\bfseries get\-History} ()}\label{classparser_program_1_1_parser_program_ade596abd5eb6e01c6be4e9da8d71b39d}

\item 
\hyperlink{enumparser_program_1_1_r_e_s_u_l_t}{R\-E\-S\-U\-L\-T} \hyperlink{classparser_program_1_1_parser_program_ac8e01a54887a9c9f0a9d277d5cbb0c61}{parse} ()  throws Interrupted\-Exception
\begin{DoxyCompactList}\small\item\em The leading method of the class, responsible of the parsing of input string and consequent stack parsing and history creation. \end{DoxyCompactList}\item 
\hypertarget{classparser_program_1_1_parser_program_a8a5d6d764dffb841c4eb2e0ba7e8a831}{List$<$ String $>$ {\bfseries get\-T} ()}\label{classparser_program_1_1_parser_program_a8a5d6d764dffb841c4eb2e0ba7e8a831}

\item 
\hypertarget{classparser_program_1_1_parser_program_a2069ee9c4e2c9e5b842e6480ceda50e8}{List$<$ String $>$ {\bfseries get\-V} ()}\label{classparser_program_1_1_parser_program_a2069ee9c4e2c9e5b842e6480ceda50e8}

\end{DoxyCompactItemize}
\subsection*{Static Package Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classparser_program_1_1_parser_program_a345c2f7b22b455b824b68058e2dc1a83}{static Logger {\bfseries logger} = Logger.\-get\-Logger(Parser\-Program.\-class.\-get\-Name())}\label{classparser_program_1_1_parser_program_a345c2f7b22b455b824b68058e2dc1a83}

\end{DoxyCompactItemize}
\subsection*{Static Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classparser_program_1_1_parser_program_ad3661a982707613bf19207e8a8dea111}{static String {\bfseries replace\-Last} (String text, String regex, String replacement)}\label{classparser_program_1_1_parser_program_ad3661a982707613bf19207e8a8dea111}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classparser_program_1_1_parser_program_a2058f2a99c2704e6dd31bb9c0b19c085}{Stack$<$ String $>$ {\bfseries stack}}\label{classparser_program_1_1_parser_program_a2058f2a99c2704e6dd31bb9c0b19c085}

\item 
\hypertarget{classparser_program_1_1_parser_program_a2ab3901075f4c939b8f81eeb396eabed}{String {\bfseries simbol}}\label{classparser_program_1_1_parser_program_a2ab3901075f4c939b8f81eeb396eabed}

\item 
\hypertarget{classparser_program_1_1_parser_program_a316d94b7fa9f2299a0afc1bfd8eff026}{String {\bfseries input}}\label{classparser_program_1_1_parser_program_a316d94b7fa9f2299a0afc1bfd8eff026}

\item 
\hypertarget{classparser_program_1_1_parser_program_a4254fc1216b4026ee88821603ad218d3}{\hyperlink{interfacecontext_free_1_1grammar_1_1_i_grammar}{I\-Grammar} {\bfseries grammar}}\label{classparser_program_1_1_parser_program_a4254fc1216b4026ee88821603ad218d3}

\item 
\hypertarget{classparser_program_1_1_parser_program_af067e8fa30e30d425f2177c512fa4248}{List$<$ \hyperlink{classparser_program_1_1_history_element}{History\-Element} $>$ {\bfseries history}}\label{classparser_program_1_1_parser_program_af067e8fa30e30d425f2177c512fa4248}

\item 
\hypertarget{classparser_program_1_1_parser_program_a2dec179401edcc43f84d128188180593}{Hashtable$<$ String, List$<$ String $>$ $>$ {\bfseries action\-Table}}\label{classparser_program_1_1_parser_program_a2dec179401edcc43f84d128188180593}

\item 
\hypertarget{classparser_program_1_1_parser_program_aebaaa2fbe8f4324d697192b8c976c60e}{Hashtable$<$ String, List$<$ String $>$ $>$ {\bfseries goto\-Table}}\label{classparser_program_1_1_parser_program_aebaaa2fbe8f4324d697192b8c976c60e}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
This class is responsible of the parsing of input string, and stack parsing creation. 

It also save the parsing chronology. It use a Grammar and its Action and Goto table. All this operation are executed with \hyperlink{classparser_program_1_1_parser_program_ac8e01a54887a9c9f0a9d277d5cbb0c61}{parse()} method. \begin{DoxyAuthor}{Author}
Paolo Pino 
\end{DoxyAuthor}


Definition at line 26 of file Parser\-Program.\-java.



\subsection{Member Function Documentation}
\hypertarget{classparser_program_1_1_parser_program_ac8e01a54887a9c9f0a9d277d5cbb0c61}{\index{parser\-Program\-::\-Parser\-Program@{parser\-Program\-::\-Parser\-Program}!parse@{parse}}
\index{parse@{parse}!parserProgram::ParserProgram@{parser\-Program\-::\-Parser\-Program}}
\subsubsection[{parse}]{\setlength{\rightskip}{0pt plus 5cm}{\bf R\-E\-S\-U\-L\-T} {\bf parser\-Program.\-Parser\-Program.\-parse} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)  throws Interrupted\-Exception}}\label{classparser_program_1_1_parser_program_ac8e01a54887a9c9f0a9d277d5cbb0c61}


The leading method of the class, responsible of the parsing of input string and consequent stack parsing and history creation. 

\begin{DoxyReturn}{Returns}
R\-E\-S\-U\-L\-T.\-A\-C\-C\-E\-P\-T if the string has been accepted, R\-E\-S\-U\-L\-T.\-E\-R\-R\-O\-R if not, R\-E\-S\-U\-L\-T.\-I\-N\-V\-A\-L\-I\-D\-\_\-\-I\-D if the input string is invalid 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em Interrupted\-Exception} & \\
\hline
\end{DoxyExceptions}


Definition at line 113 of file Parser\-Program.\-java.



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
src/parser\-Program/Parser\-Program.\-java\end{DoxyCompactItemize}
